ipv6 address space

2022-04-24 ยท 3 min read

See: IANA > Internet Protocol Version 6 Address Space

See: IANA > IPv6 Special-Purpose Address Registry

prefixnameRFCS
0000::/8Reserved
-> ::1/128LoopbackRFC4291
-> ::/128Bind to unspecified interfaceRFC4291
-> ::ffff:0:0/96IPv4-mapped addressesRFC4291
-> 64:ff9b::/96Algorithmic IPv4/IPv6 translation prefixRFC6052
-> 64:ff9b:1::/48Local-use IPv4/IPv6 translation prefixRFC8215
0100::/8Discard-only BlockRFC6666
2000::/3Global UnicastRFC4291
-> 2001::/32TEREDO - tunnel IPv6 over UDP through NATsRFC4380
-> 2001:1::1/128Port Control Protocol (PCP) static AnycastRFC7723
-> 2001:1::2/128TURN static AnycastRFC8155
-> 2001:2::/48Reserved for benchmarkingRFC5180
-> 2001:3::/32Automatic Multicast Tunneling (AMT)RFC7450
-> 2001:20::/28Overlay Routable Cryptographic Hash Ids (ORCHIDv2)RFC7343
-> 2001:db8::/32Documentation/example only addressRFC3849
-> 2002::/166to4 tunnelingRFC3056
f000::/5Reserved
f800::/6Reserved
fc00::/7Unique-Local UnicastRFC4193
fe00::/9Reserved
fe80::/10Link-Local UnicastRFC4291
ff00::/8MulticastRFC4291

unique-local unicast address (ULA) #

  • look for IPs starting with fd00::/8 as fc00::/8 is not currently allocated
  • globally unique (statistically), but not globally routable.
  • the "Global ID" is supposed to be randomly sampled. My home router samples one on initial setup.
  • people usually use these like ipv4 private address ranges (10.0.0.0/8, 172.16.0.0/16, 192.168.0.0/24)

ex #

kindCIDR
prefixfd6c:6578:6502::/48
subnetfd6c:6578:6502::/64
addressfd6c:6578:6502::85a/128

format #

| 7 bits |1|  40 bits   |  16 bits  |          64 bits           |
+--------+-+------------+-----------+----------------------------+
| Prefix |L| Global ID  | Subnet ID |        Interface ID        |
+--------+-+------------+-----------+----------------------------+
fdGG:GGGG:GGGG:ssss::/64
  • fe80::/64
  • ex: fe80::6238:e0ff:febc:3f60/128
  • address endpoints localized to a single link. Not globally routable.
  • routers will refuse to forward packets w/ link-local source to other links.
  • ex: all computers connected to a switch or wireless network or bridge can send link-local packets to each other, but can't send across routers.
  • used in protocols like IPv6 Stateless Address Configuration (SLAAC), where you don't really care what address each host gets as long as it's unique and routable. Compare w/ DHCP which gives tighter control over address allocation.

format #

|   10     |
|  bits    |         54 bits         |          64 bits           |
+----------+-------------------------+----------------------------+
|1111111010|           0             |       interface ID         |
+----------+-------------------------+----------------------------+